package com.liliudong.template.biz.service.sys;

import java.util.List;
import java.util.Set;

/**
 *
 *
 * @project template-backend
 * @author liudo
 * @date 2024/7/31 14:32:05
 * @version 1.0
 */
public interface SysRoleMenuService {
    /**
     * 使用角色id保存批处理
     *
     * @param roleId  角色id
     * @param menuIds 菜单id
     */
    void saveBatchWithRoleId(Long roleId, List<Long> menuIds);

    /**
     * 按角色id删除
     *
     * @param roleId 角色id
     */
    void removeByRoleId(Long roleId);

    /**
     * 按角色id列出菜单id
     *
     * @param roleId  角色id
     * @param isAdmin 是管理员
     * @return {@link Set }<{@link Long }>
     */
    Set<Long> listMenuIdsByRoleId(Long roleId, boolean isAdmin);

    /**
     * 按菜单id计数
     *
     * @param menuId 菜单id
     * @return long
     */
    long countByMenuId(Long menuId);
}
